Let's talk about Eiffel libraries

by Jocelyn-Fiat (modified: 2014 Mar 05)

Hi Eiffel users,

I know that many Eiffel libraries are quite well known, mostly the ones shipped with Eiffel Studio, which also includes Gobo Eiffel libraries. However, even among those libraries, there are a few that are barely known by the users. There may be various reasons for that, either there is a new library that was added but inside a sub folder, or even on top folder; but as a user, we don't look that frequently into the various folders of Eiffel Studio, or other packages to find new code. And sometime it is just about addition into existing libraries, most of the time the change-logs give hint about addition, but not always. In addition to those libraries that come with Eiffel Studio, there are a growing number of libraries available on the Internet, and either we don't know about all of them or we are not aware of improvements, or just libraries that are published and remain private.

As a consequence, Eiffel users tend to build on their side code that provides missing functionalities, it is not always designed in a standalone library, and as a result, it is not easy to reuse, or just to share with other people. But the worst case is that Eiffel users would like to do something, but does not has the skill, knowledge or even time to code the missing components; but sometime there is a library that would help them, or there are other users that could help/collaborate.

Thus to avoid to get duplicated libraries for the same needs, or to help Eiffel users finding component to build their projects, I would love to improve users collaboration to get better libraries, and also build missing libraries.

So in the coming weeks, I will try to blog once a week about a library, mainly to name it, describe it, and eventually point to the main classes, and main usages (quick code usage). Of course, don't hesitate to do the same for your own libraries or lib that I am not aware of. I will use the hashtag "#eiffelhub", and you can use this one too, this way, we can find related post more easily.

This week, I do not blog about a particular library, just announcing this idea to get comments, suggestions, and so on.

As a start I am just listing various locations for Eiffel libraries

  • Eiffel Studio is providing:
  - $ISE_EIFFEL/library : official libraries from Eiffel Software
    (See http://svn.eiffel.com/eiffelstudio/trunk/Src/library for source code)
  - $ISE_EIFFEL/unstable/library : official libraries from Eiffel Software but interface is likely to change in the future
    (See http://svn.eiffel.com/eiffelstudio/trunk/Src/unstable/library for source code)
  - $ISE_EIFFEL/contrib/library : libraries contributed by Eiffel users, and shipped with Eiffel Studio for users convenience (this includes the Gobo Eiffel libraries)
    (See http://svn.eiffel.com/eiffelstudio/trunk/Src/unstable/contrib for source code)
  - but libraries that are mainly used to build Eiffel Studio, this is not shipped with Eiffel Studio, but may be inspiring to read
    (See http://svn.eiffel.com/eiffelstudio/trunk/Src/framework for source code)
  • Gobo Eiffel : see https://github.com/gobo-eiffel
  • Eiffel Web Framework ecosystem: see https://github.com/EiffelWebFramework
  • Eiffel Loop: see http://www.eiffel-loop.com/
  • EOMF: see https://github.com/wolandscat/EOMF
  • and others from various github or sourceforge repositories, Eiffel-SAFE project, former elj libraries, and so on...
  • ( I guess there are others, so don't hesitate to tell me other links, I know there are others, including eiffelhub.org that is also playing this role of Eiffel components hub)

Other way to find Eiffel libraries

  • https://github.com/search?q=language%3Aeiffel
  • http://eiffelroom.com/library
  • http://iron.eiffel.com
  • https://www.ohloh.net/tags/eiffel
  • http://sourceforge.net/directory/language:eiffel/?q=
  • http://sourceforge.net/directory/?q=eiffel

I will not follow any specific order for post of Eiffel library, but if you have suggestion, please use the comments.And also, if you are looking for a component, or willing to collaborate, or sponsor a project, this is a good way to communicate with other Eiffel users.

To be continued

-- Jocelyn

  1. eiffelhub